我們講述了Mavne如何進行Java的構建部署不過都是靠我們在command line輸入指令,真正的開發部署流程你不會想要自己敲指令,這時你就需要CI/CD工具幫你完成一條龍的自動化服務
註:圖片來自CI/CD: Continuous Integration and Continuous Delivery - geeksforgeeks
Build pipline指程式碼提交 → 程式編譯 → 測試 → 打包這個環節
Release pipline中Delivery指的是有的團隊會比較謹慎,會將最後部版至production的動作由人工手動完成,若無人工介入部版則稱為Deployment
簡言之CI/CD核心理念就是把SDLC自動化,常見的做法就是開發人員透過git提交程式碼到remote repository,發出pull request交由資深同仁審核後,merge 到main分支,透過git hook機制trigger CI/CD整合工具進行構建測試及部署,通常部到測試環境會是Deployment,正式環境則是Delivery交由人員介入確認一切後在部署至正式環境運行,畢竟production環境還是需要小心小心再小心
@RestController
public class HelloController {
@GetMapping("/hello")
public String sayHello() {
return "Hello, World!";
}
}